package com.oa.modules.approvalsec1.dao;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.oa.modules.approvalsec1.entity.LicenceEntity;
import com.oa.modules.approvalsec1.entity.StatuteInfoEntity;
import com.oa.modules.approvalsec1.entity.StatuteLibraryEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
 * 政策法规库
 * 
 * @author jimboo
 * @email jimboo7339@163.com
 * @date 2022-08-15 15:19:48
 */
@Mapper
public interface StatuteLibraryDao extends BaseMapper<StatuteLibraryEntity> {
    /**
     * 查询总条数
     *
     * @author jimboo
     * @email jimboo7339@163.com
     * @date 2022-08-15 15:19:48
     * @Description 查询分页数据
     */
    long findPage(@Param("params") Map<String, Object> params);

    /**
     * 查询分页数据
     *
     * @author jimboo
     * @email jimboo7339@163.com
     * @date 2022-08-15 15:19:48
     * @Description 查询分页数据
     */
    List<StatuteLibraryEntity> findRecords(IPage<StatuteLibraryEntity> page, @Param("params") Map<String, Object> params);

    List<StatuteLibraryEntity> getTree();

    List<StatuteLibraryEntity> getTextByIds(Integer[] ids);

    List<StatuteLibraryEntity> selectTree();

    List<StatuteLibraryEntity> getChildrenByName(String name);

    List<StatuteLibraryEntity> getChildrenByName2(String name);

    StatuteLibraryEntity getInfoById(Integer id);

    void insertRecord(Integer[] ids);

    List<Map> getDataByCategory();

    List<LinkedHashMap> getDataByMonth();

    List<Map> getDataViews();

    void insertInfo(StatuteInfoEntity statuteinfo);

    List<Map> getStatuteInfoTotal(Map<String, Object> params);

    List<StatuteInfoEntity> getStatuteInfoList(Map<String, Object> params);

    List<StatuteInfoEntity> selectStatuteInfo(StatuteInfoEntity statuteinfo);
}
